/**
 * ReportGear(2011)
 */
package com.reportgear.report.model.calculator;

import net.abbp.report.model.ReportModel;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


/**
 * 报表模型计算器接口
 * 
 * @version 1.0 2011-4-10
 * @author <a herf="lexloo@gmail.com">lexloo</a>
 * @since ReportGear 1.0
 */
public interface Calculator {
	/**
	 * 日志记录器
	 */
	public static final Logger logger = LoggerFactory.getLogger(Calculator.class.getName());

	/**
	 * 模型计算
	 * 
	 * @param model
	 *            模型
	 * @param parameter
	 *            参数
	 * @return 计算后的模型
	 */
	public ReportModel calculate(ReportModel model, CalcParameter parameter);
}
